<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="utf-8" />
		<base href="../../" />
		<script src="list.js"></script>
		<script src="page.js"></script>
		<link type="text/css" rel="stylesheet" href="page.css" />
	</head>
	<body>
		<h1>[name]</h1>

		<div class="desc">A geometric line segment represented by a start and end point.</div>


		<h2>Constructor</h2>


		<h3>[name]( [page:Vector3 start], [page:Vector3 end] )</h3>
		<div>
		[page:Vector3 start] - Start of the line segment. Default is (0, 0, 0).<br />
		[page:Vector3 end] - End of the line segment. Default is (0, 0, 0).<br /><br />

		Creates a new [name].
		</div>


		<h2>Properties</h2>

		<h3>[property:Vector3 start]</h3>
		<div>[page:Vector3] representing the start point of the line.</div>

		<h3>[property:Vector3 end]</h3>
		<div>[page:Vector3] representing the end point of the line.</div>





		<h2>Methods</h2>

		<h3>[method:Line3 applyMatrix4]( [page:Matrix4 matrix] )</h3>
		<div>Applies a matrix transform to the line segment.</div>

		<h3>[method:Vector3 at]( [page:Float t], [page:Vector3 optionalTarget] )</h3>
		<div>
		[page:Float t] - Use values 0-1 to return a position along the line segment. <br />
		[page:Vector3 optionalTarget] - (optional) if specified, the result will be copied into this [page:Vector3],
		otherwise a new [page:Vector3] will be created.<br /><br />

		Returns a vector at a certain position along the line. When [page:Float t] = 0, it returns the start vector,
		and when [page:Float t] = 1 it returns the end vector.<br />
		</div>

		<h3>[method:Line3 clone]()</h3>
		<div>Returns a new [page:Line3] with the same [page:.start start] and [page:.end end] vectors as this one.</div>

		<h3>[method:Vector3 closestPointToPoint]( [page:Vector3 point], [page:Boolean clampToLine], [page:Vector3 optionalTarget] )</h3>
		<div>
		[page:Vector3 point] - return the closest point on the line to this point.<br />
		[page:Boolean clampToLine] - whether to clamp the returned value to the line segment.<br />
		[page:Vector3 optionalTarget] - (optional) if specified, the result will be copied into this [page:Vector3],
		otherwise a new [page:Vector3] will be created.<br /><br />

		Returns the closets point on the line. If [page:Boolean clampToLine] is true, then the returned value will be
		clamped to the line segment.
		</div>

		<h3>[method:Float closestPointToPointParameter]( [page:Vector3 point], [page:Boolean clampToLine] )</h3>
		<div>
		[page:Vector3 point] - the point for which to return a point parameter. <br />
		[page:Boolean clampToLine] - Whether to clamp the result to the range [0, 1].<br /><br />

		Returns a point parameter based on the closest point as projected on the line segement.
		If [page:Boolean clampToLine] is true, then the returned value will be between 0 and 1.
		</div>

		<h3>[method:Line3 copy]( [page:Line3 line] )</h3>
		<div>Copies the passed line's [page:.start start] and [page:.end end] vectors to this line.</div>

		<h3>[method:Vector3 delta]( [page:Vector3 optionalTarget] )</h3>
		<div>
			[page:Vector3 optionalTarget] - (optional) if specified, the result will be copied into this [page:Vector3],
			otherwise a new [page:Vector3] will be created.<br /><br />

			Returns the delta vector of the line segment ( [page:.end end] vector minus the [page:.start start] vector).
		</div>

		<h3>[method:Float distance]()</h3>
		<div>Returns the [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean distance]
		(straight-line distance) between the line's [page:.start start] and [page:.end end] points.</div>

		<h3>[method:Float distanceSq]()</h3>
		<div>
			Returns the square of the [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean distance]
			(straight-line distance) between the line's [page:.start start]
			and [page:.end end] vectors.
		</div>

		<h3>[method:Boolean equals]( [page:Line3 line] )</h3>
		<div>
		[page:Line3 line]  - [page:Line3] to compare with this one.<br /><br />

		Returns true if both line's [page:.start start] and [page:.end en] points are equal.
		</div>

		<h3>[method:Vector3 getCenter]( [page:Vector3 optionalTarget] )</h3>
		<div>
			[page:Vector3 optionalTarget] - (optional) if specified, the result will be copied into this [page:Vector3],
			otherwise a new [page:Vector3] will be created.<br /><br />

		Returns the center of the line segment.
		</div>

		<h3>[method:Line3 set]( [page:Vector3 start], [page:Vector3 end] )</h3>
		<div>
		[page:Vector3 start] - set the [page:.start start point] of the line.<br />
		[page:Vector3 end] - set the [page:.end end point] of the line.<br /><br />

		Sets the start and end values by copying the provided vectors.
		</div>

		<h2>Source</h2>

		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
	</body>
</html>
